package cn.gov.pbc.dream.common;

import lombok.AllArgsConstructor;
import lombok.Getter;

public class ValidateTypeConst {

    @Getter
    @AllArgsConstructor
    public enum ValidateType{
        VALIDATE_3_6_1("3_6_1", "产品募集信息",
                "开放式净值型、封闭式净值型产品份额比对不符合校验公式（当期期末产品份额=上期期末产品份额+当期申购份额-当期兑付份额）",
                "募集信息罗辑关系（全国及各地区）"),

        VALIDATE_3_6_2("3_6_2", "产品募集信息",
                "开放式净值型、封闭式净值型产品金额比对不符合校验公式（当期期末产品金额≈上期期末产品金额+当期申购金额-当期兑付金额）",
                "募集信息罗辑关系（全国及各地区）"),
        VALIDATE_3_6_4("3_6_4", "产品募集信息",
                "开放式非净值型或封闭式非净值型产品份额比对不符合校验公式（当期期末产品份额≈上期期末产品份额+当期申购份额-当期兑付金额）",
                "募集信息罗辑关系（全国及各地区）"),
        VALIDATE_19_2_3("19_2_3", "产品募集信息",
                "期末产品金额（上期）+当期申购金额-当期兑付=期末产品金额（当期），请核实\"兑付是否报送收益\"",
                "不符合业务逻辑");
        private String code;

        private String validateType; //校验类别

        private String validateDetail; //校验类别明细

        private String validateDesc; //校验规则描述

        public ValidateType codeOf(String code){
            for(ValidateType validateType : values()){
                if(validateType.getCode().equals(code)){
                    return validateType;
                }
            }
            return null;
        }


    }
}
